#pragma once

#include <Windows.h>
#include "truetype.h"

struct GdiRaster
{
	glyf_raster_t base;
	HDC hdc;
	float_32 x, y;
	float_32 x_first, y_first;
	float_32 x_off, y_off;
	float_32 x_rate, y_rate;
};

VOID GdiRasterReset(GdiRaster * raster, HDC hdc);

void GdiRasterMoveTo(tag_glyf_raster * raster, float_32 x, float_32 y);
void GdiRasterLineTo(tag_glyf_raster * raster, float_32 x, float_32 y);
void GdiRasterCurveTo(tag_glyf_raster * raster, float_32 x2, float_32 y2, float_32 x3, float_32 y3);
void GdiRasterLineClose(tag_glyf_raster * raster);
void GdiRasterCurveClose(tag_glyf_raster * raster, float_32 x2, float_32 y2);
